/***
 *  error-first callabck
 *  node-style callback
 *  第一个参数是error
 *
 *  Nodejs事件循环:
 *  异步流程控制: async.js
 *  编程范式: thunk
 *
 */

// try {
interview((res) => {
    if (res) {
        console.log('callback error');
        return;
    }
    console.log('callback yeah!');
});
// } catch (e) {
//     console.log(`error: ${e}`);
// }

function interview(callback) {
    setTimeout(() => {
        if (Math.random() < 0.6) {
            callback(null, 'success');
        } else {
            callback(new Error('fail'));
            // throw new Error('fail')
        }
    });
};










